Session Initiation Protocol (SIP), as extended by RFC 3265 (“Session Initiation Protocol (SIP)-Specific Event Notification”, June 2002), utilizes a subscribe method to request a current state as well as state updates from a remote node. The specification for Open Mobile Alliance (OMA) Presence SIMPLE (SIP for Instant Messaging and Presence Leveraging Extensions) defines mechanisms for utilizing SIP to perform instant messaging and other functions. Rich Communication Services (RCS) is a GSM Association (GSMA) program that provides for inter-operability within an IP Multimedia Subsystem (IMS). One feature of RCS is the ability to discover capabilities of contacts. RCS utilizes OMA SIMPLE for various features, including subscription to a presence server (PS) to obtain capability information for a list of contacts.
RFC 3265 defines a persistent subscription session and a polling resource session, both of which may be used by OMA SIMPLE and RCS to obtain capabilities information. An “expires” header within the SIP SUBSCRIBE request determines whether the RCS server initiates a persistent subscription session or a polling resource session. In particular, an “expires” header indicating an expiration of zero seconds triggers polling behavior. A non-zero “expires” header, if accepted, causes a persistent subscription lasting the number of seconds indicated by the “expires” header itself. For example, an “expires” header of 3600 results in a persistent subscription of 3600 seconds.
In an RCS network, a SIP client registers with a Resource List Server (RLS) and with a PS, and publishes its capabilities to its PS. The SIP client sends a SIP Anonymous List Subscribe (or a SIP List Subscribe) message to the RLS, indicating a subscription to presence and capabilities for its contacts. Where the SIP subscribe message has a nonzero expires header, a persistent session is set up with the RLS. The RLS notifies the IMS home network of the SIP client that it has an active subscription with the SIP client, and then establishes a SIP Anonymous short-lived Backend Subscribe session through the IMS home network to the PS. The IMS home network establishes a binding within a home subscription server (HSS) to track the persistent session to the PS, and the PS communicates with a Shared XDMS (XML Document Management Specification) server to obtain presence and capability information for the SIP client's contacts. Once received, the PS communicates the presence and capability information back to the RLS, and the RLS sends SIP Notify messages back to the SIP client, including updates, for as long as the SIP Subscribe expiration time lasts.